﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ServiceSATT.ui;
using ServiceSATT;

namespace ReporteSATT
{
    public class ListadoPersona : IUiListadoPersona
    {
        RptPersona rpt = new RptPersona();
        ServiceSATT.TipoPersona tipo_;
        DataSet.DsPersona ds = new ReporteSATT.DataSet.DsPersona();
        public CrystalDecisions.CrystalReports.Engine.ReportClass ListadoAfiliado()
        {
            IPersonaService historia = new PersonaService();
            tipo_ = TipoPersona.Afiliado;
            historia.ListarPersonas(this);
            string url = System.AppDomain.CurrentDomain.BaseDirectory;
            rpt.FileName = "rassdk://" + url + "\\Reportes\\RptPersona.rpt";
            rpt.SetDataSource(ds);
            rpt.SetParameterValue(0, "Afiliado");
            return rpt;
        }
        public CrystalDecisions.CrystalReports.Engine.ReportClass ListadoEmpleado()
        {
            IPersonaService historia = new PersonaService();
            tipo_ = TipoPersona.Empleado;
            historia.ListarPersonas(this);
            string url = System.AppDomain.CurrentDomain.BaseDirectory;
            rpt.FileName = "rassdk://" + url + "\\Reportes\\RptPersona.rpt";
            rpt.SetDataSource(ds);
            rpt.SetParameterValue(0, "Empleado");
            return rpt;
        }

        public CrystalDecisions.CrystalReports.Engine.ReportClass ListadoArbitro()
        {
            IPersonaService historia = new PersonaService();
            tipo_ = TipoPersona.Arbitro;
            historia.ListarPersonas(this);
            string url = System.AppDomain.CurrentDomain.BaseDirectory;
            rpt.FileName = "rassdk://" + url + "\\Reportes\\RptPersona.rpt";
            rpt.SetDataSource(ds);
            rpt.SetParameterValue(0, "Arbitro");
            return rpt;
        }

        #region IUiListadoPersona Members

        public ServiceSATT.TipoPersona Tipo
        {
            get { return tipo_; }
        }

        public System.Data.DataTable Listado
        {
            set
            {
                ds.DtPersona.Merge(value);
            }
        }

        #endregion
    }
}
